home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 15 / BBS in a box XV-2.iso / Files II / Publish / A / Alpha 5.96.sit / Tcl / SystemCode / win.tcl < prev    next >
MacBinary  |  1994-09-03  |  7.5 KB  |  [TEXT/ALFA]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Tiny Stuff (image/tinyStuff) magic Supported
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Sat Sep 3 22:44:55 1994, modified Sat Sep 3 22:44:55 1994, creator Alpha editor, type ASCII, 6581 bytes "win.tcl" , at 0x1a35 792 bytes resource default (weak)
99% file data default
42% TrID Macintosh plain text (MacBinary) default
42% TrID Tiny Stuff format bitmap (low-res) default
14% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[ALFA]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 07 77 69 6e 2e 74 63 | 6c 00 00 00 00 00 00 00 |..win.tc|l.......|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 41 4c 46 | 41 01 00 00 00 00 00 00 |.TEXTALF|A.......|
|00000050| 00 00 00 00 00 19 b5 00 | 00 03 18 aa 8e e5 27 aa |........|......'.|
|00000060| 8e e5 27 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..'.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 3b 8e 00 00 |........|....;...|
|00000080| 23 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#=======|========|
|00000090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 23 |========|======.#|
|000000d0| 09 57 69 6e 64 6f 77 20 | 68 61 6e 64 6c 69 6e 67 |.Window |handling|
|000000e0| 20 72 6f 75 74 69 6e 65 | 73 2e 20 41 6c 6c 20 70 | routine|s. All p|
|000000f0| 72 6f 63 73 20 61 72 65 | 20 62 6f 75 6e 64 20 69 |rocs are| bound i|
|00000100| 6e 20 41 6c 70 68 61 42 | 69 74 73 2e 74 63 6c 2e |n AlphaB|its.tcl.|
|00000110| 0d 23 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.#======|========|
|00000120| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000130| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000140| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000150| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.|
|00000160| 0d 70 72 6f 63 20 73 68 | 72 69 6e 6b 48 69 67 68 |.proc sh|rinkHigh|
|00000170| 20 7b 7d 20 7b 0d 09 67 | 6c 6f 62 61 6c 20 74 69 | {} {..g|lobal ti|
|00000180| 6c 65 54 6f 70 0d 09 73 | 65 74 20 74 65 78 74 20 |leTop..s|et text |
|00000190| 5b 67 65 74 47 65 6f 6d | 65 74 72 79 5d 0d 09 73 |[getGeom|etry]..s|
|000001a0| 65 74 20 6c 65 66 74 20 | 5b 6c 69 6e 64 65 78 20 |et left |[lindex |
|000001b0| 24 74 65 78 74 20 30 5d | 0d 09 73 65 74 20 74 6f |$text 0]|..set to|
|000001c0| 70 20 5b 6c 69 6e 64 65 | 78 20 24 74 65 78 74 20 |p [linde|x $text |
|000001d0| 31 5d 0d 09 73 65 74 20 | 77 69 64 74 68 20 5b 6c |1]..set |width [l|
|000001e0| 69 6e 64 65 78 20 24 74 | 65 78 74 20 32 5d 0d 09 |index $t|ext 2]..|
|000001f0| 73 69 7a 65 57 69 6e 20 | 24 77 69 64 74 68 20 31 |sizeWin |$width 1|
|00000200| 35 30 0d 09 6d 6f 76 65 | 57 69 6e 20 24 6c 65 66 |50..move|Win $lef|
|00000210| 74 20 24 74 69 6c 65 54 | 6f 70 0d 7d 0d 0d 70 72 |t $tileT|op.}..pr|
|00000220| 6f 63 20 73 68 72 69 6e | 6b 4c 6f 77 20 7b 7d 20 |oc shrin|kLow {} |
|00000230| 7b 0d 09 73 65 74 20 74 | 65 78 74 20 5b 67 65 74 |{..set t|ext [get|
|00000240| 47 65 6f 6d 65 74 72 79 | 5d 0d 09 73 65 74 20 6c |Geometry|]..set l|
|00000250| 65 66 74 20 5b 6c 69 6e | 64 65 78 20 24 74 65 78 |eft [lin|dex $tex|
|00000260| 74 20 30 5d 0d 09 73 65 | 74 20 74 6f 70 20 5b 6c |t 0]..se|t top [l|
|00000270| 69 6e 64 65 78 20 24 74 | 65 78 74 20 31 5d 0d 09 |index $t|ext 1]..|
|00000280| 73 65 74 20 77 69 64 74 | 68 20 5b 6c 69 6e 64 65 |set widt|h [linde|
|00000290| 78 20 24 74 65 78 74 20 | 32 5d 0d 09 6d 6f 76 65 |x $text |2]..move|
|000002a0| 57 69 6e 20 24 6c 65 66 | 74 20 33 31 35 0d 09 73 |Win $lef|t 315..s|
|000002b0| 69 7a 65 57 69 6e 20 24 | 77 69 64 74 68 20 31 34 |izeWin $|width 14|
|000002c0| 36 0d 7d 0d 0d 70 72 6f | 63 20 73 68 72 69 6e 6b |6.}..pro|c shrink|
|000002d0| 46 75 6c 6c 20 7b 7d 20 | 7b 0d 09 67 6c 6f 62 61 |Full {} |{..globa|
|000002e0| 6c 20 74 69 6c 65 54 6f | 70 20 74 69 6c 65 48 65 |l tileTo|p tileHe|
|000002f0| 69 67 68 74 0d 09 6d 6f | 76 65 57 69 6e 20 32 20 |ight..mo|veWin 2 |
|00000300| 24 74 69 6c 65 54 6f 70 | 0d 09 73 69 7a 65 57 69 |$tileTop|..sizeWi|
|00000310| 6e 20 35 31 30 20 24 74 | 69 6c 65 48 65 69 67 68 |n 510 $t|ileHeigh|
|00000320| 74 0d 7d 0d 0d 70 72 6f | 63 20 73 68 72 69 6e 6b |t.}..pro|c shrink|
|00000330| 4c 65 66 74 20 7b 7d 20 | 7b 0d 09 67 6c 6f 62 61 |Left {} |{..globa|
|00000340| 6c 20 74 69 6c 65 57 69 | 64 74 68 20 74 69 6c 65 |l tileWi|dth tile|
|00000350| 54 6f 70 20 74 69 6c 65 | 48 65 69 67 68 74 0d 09 |Top tile|Height..|
|00000360| 0d 09 73 65 74 20 6d 61 | 72 67 69 6e 20 34 0d 09 |..set ma|rgin 4..|
|00000370| 73 65 74 20 77 69 64 74 | 68 20 5b 65 78 70 72 20 |set widt|h [expr |
|00000380| 28 24 74 69 6c 65 57 69 | 64 74 68 2f 32 29 2d 24 |($tileWi|dth/2)-$|
|00000390| 6d 61 72 67 69 6e 5d 0d | 09 73 65 74 20 74 65 78 |margin].|.set tex|
|000003a0| 74 20 5b 67 65 74 47 65 | 6f 6d 65 74 72 79 5d 0d |t [getGe|ometry].|
|000003b0| 09 73 65 74 20 77 69 64 | 74 68 20 5b 65 78 70 72 |.set wid|th [expr|
|000003c0| 20 28 24 74 69 6c 65 57 | 69 64 74 68 2f 32 29 2d | ($tileW|idth/2)-|
|000003d0| 24 6d 61 72 67 69 6e 5d | 0d 09 73 65 74 20 77 69 |$margin]|..set wi|
|000003e0| 64 74 68 20 5b 65 78 70 | 72 20 7b 24 77 69 64 74 |dth [exp|r {$widt|
|000003f0| 68 20 2b 20 24 6d 61 72 | 67 69 6e 20 2f 20 32 7d |h + $mar|gin / 2}|
|00000400| 5d 0d 09 6d 6f 76 65 57 | 69 6e 20 32 20 24 74 69 |]..moveW|in 2 $ti|
|00000410| 6c 65 54 6f 70 0d 09 73 | 69 7a 65 57 69 6e 20 24 |leTop..s|izeWin $|
|00000420| 77 69 64 74 68 20 24 74 | 69 6c 65 48 65 69 67 68 |width $t|ileHeigh|
|00000430| 74 0d 7d 0d 0d 70 72 6f | 63 20 73 68 72 69 6e 6b |t.}..pro|c shrink|
|00000440| 52 69 67 68 74 20 7b 7d | 20 7b 0d 09 67 6c 6f 62 |Right {}| {..glob|
|00000450| 61 6c 20 74 69 6c 65 57 | 69 64 74 68 20 74 69 6c |al tileW|idth til|
|00000460| 65 54 6f 70 20 74 69 6c | 65 48 65 69 67 68 74 0d |eTop til|eHeight.|
|00000470| 09 0d 09 73 65 74 20 6d | 61 72 67 69 6e 20 34 0d |...set m|argin 4.|
|00000480| 09 73 65 74 20 77 69 64 | 74 68 20 5b 65 78 70 72 |.set wid|th [expr|
|00000490| 20 28 24 74 69 6c 65 57 | 69 64 74 68 2f 32 29 2d | ($tileW|idth/2)-|
|000004a0| 24 6d 61 72 67 69 6e 5d | 0d 09 73 65 74 20 74 65 |$margin]|..set te|
|000004b0| 78 74 20 5b 67 65 74 47 | 65 6f 6d 65 74 72 79 5d |xt [getG|eometry]|
|000004c0| 0d 09 73 65 74 20 77 69 | 64 74 68 20 5b 65 78 70 |..set wi|dth [exp|
|000004d0| 72 20 28 24 74 69 6c 65 | 57 69 64 74 68 2f 32 29 |r ($tile|Width/2)|
|000004e0| 2d 24 6d 61 72 67 69 6e | 5d 0d 09 73 65 74 20 77 |-$margin|]..set w|
|000004f0| 69 64 74 68 20 5b 65 78 | 70 72 20 7b 24 77 69 64 |idth [ex|pr {$wid|
|00000500| 74 68 20 2b 20 24 6d 61 | 72 67 69 6e 20 2f 20 32 |th + $ma|rgin / 2|
|00000510| 7d 5d 0d 09 6d 6f 76 65 | 57 69 6e 20 5b 65 78 70 |}]..move|Win [exp|
|00000520| 72 20 32 20 2b 20 24 77 | 69 64 74 68 20 2b 20 24 |r 2 + $w|idth + $|
|00000530| 6d 61 72 67 69 6e 5d 20 | 24 74 69 6c 65 54 6f 70 |margin] |$tileTop|
|00000540| 0d 09 73 69 7a 65 57 69 | 6e 20 24 77 69 64 74 68 |..sizeWi|n $width|
|00000550| 20 24 74 69 6c 65 48 65 | 69 67 68 74 0d 7d 0d 0d | $tileHe|ight.}..|
|00000560| 70 72 6f 63 20 73 77 61 | 70 57 69 74 68 4e 65 78 |proc swa|pWithNex|
|00000570| 74 20 7b 7d 20 7b 0d 09 | 73 65 74 20 66 69 6c 65 |t {} {..|set file|
|00000580| 73 20 5b 77 69 6e 4e 61 | 6d 65 73 20 2d 66 5d 0d |s [winNa|mes -f].|
|00000590| 09 69 66 20 7b 5b 6c 6c | 65 6e 67 74 68 20 24 66 |.if {[ll|ength $f|
|000005a0| 69 6c 65 73 5d 20 3c 20 | 32 7d 20 72 65 74 75 72 |iles] < |2} retur|
|000005b0| 6e 0d 09 62 72 69 6e 67 | 54 6f 46 72 6f 6e 74 20 |n..bring|ToFront |
|000005c0| 5b 6c 69 6e 64 65 78 20 | 24 66 69 6c 65 73 20 31 |[lindex |$files 1|
|000005d0| 5d 0d 7d 0d 09 0d 0d 0d | 70 72 6f 63 20 6e 65 78 |].}.....|proc nex|
|000005e0| 74 57 69 6e 64 6f 77 20 | 7b 7d 20 7b 0d 09 67 6c |tWindow |{} {..gl|
|000005f0| 6f 62 61 6c 20 77 69 6e | 41 63 74 69 76 65 20 0d |obal win|Active .|
|00000600| 09 73 65 74 20 66 69 6c | 65 73 20 5b 77 69 6e 4e |.set fil|es [winN|
|00000610| 61 6d 65 73 20 2d 66 5d | 0d 09 69 66 20 7b 5b 6c |ames -f]|..if {[l|
|00000620| 6c 65 6e 67 74 68 20 24 | 66 69 6c 65 73 5d 20 3c |length $|files] <|
|00000630| 20 32 7d 20 7b 72 65 74 | 75 72 6e 7d 0d 09 73 65 | 2} {ret|urn}..se|
|00000640| 74 20 66 20 5b 6c 69 6e | 64 65 78 20 24 66 69 6c |t f [lin|dex $fil|
|00000650| 65 73 20 30 5d 0d 09 73 | 65 74 20 61 69 6e 64 20 |es 0]..s|et aind |
|00000660| 5b 6c 73 65 61 72 63 68 | 20 24 77 69 6e 41 63 74 |[lsearch| $winAct|
|00000670| 69 76 65 20 24 66 5d 0d | 09 69 66 20 7b 24 61 69 |ive $f].|.if {$ai|
|00000680| 6e 64 20 3c 20 30 7d 20 | 7b 65 72 72 6f 72 20 22 |nd < 0} |{error "|
|00000690| 4e 6f 20 77 69 6e 20 27 | 24 66 27 22 7d 0d 09 73 |No win '|$f'"}..s|
|000006a0| 65 74 20 72 6e 67 20 5b | 6c 72 61 6e 67 65 20 24 |et rng [|lrange $|
|000006b0| 77 69 6e 41 63 74 69 76 | 65 20 30 20 5b 65 78 70 |winActiv|e 0 [exp|
|000006c0| 72 20 24 61 69 6e 64 2d | 31 5d 5d 0d 09 73 65 74 |r $aind-|1]]..set|
|000006d0| 20 77 69 6e 41 63 74 69 | 76 65 20 5b 63 6f 6e 63 | winActi|ve [conc|
|000006e0| 61 74 20 5b 6c 72 61 6e | 67 65 20 24 77 69 6e 41 |at [lran|ge $winA|
|000006f0| 63 74 69 76 65 20 24 61 | 69 6e 64 20 65 6e 64 5d |ctive $a|ind end]|
|00000700| 20 24 72 6e 67 5d 0d 09 | 73 65 74 20 77 69 6e 41 | $rng]..|set winA|
|00000710| 63 74 69 76 65 20 5b 6c | 72 61 6e 67 65 20 24 77 |ctive [l|range $w|
|00000720| 69 6e 41 63 74 69 76 65 | 20 31 20 65 6e 64 5d 0d |inActive| 1 end].|
|00000730| 09 6c 61 70 70 65 6e 64 | 20 77 69 6e 41 63 74 69 |.lappend| winActi|
|00000740| 76 65 20 24 66 0d 09 62 | 72 69 6e 67 54 6f 46 72 |ve $f..b|ringToFr|
|00000750| 6f 6e 74 20 5b 6c 69 6e | 64 65 78 20 24 77 69 6e |ont [lin|dex $win|
|00000760| 41 63 74 69 76 65 20 30 | 5d 0d 7d 0d 0d 0d 70 72 |Active 0|].}...pr|
|00000770| 6f 63 20 70 72 65 76 57 | 69 6e 64 6f 77 20 7b 7d |oc prevW|indow {}|
|00000780| 20 7b 0d 09 67 6c 6f 62 | 61 6c 20 77 69 6e 41 63 | {..glob|al winAc|
|00000790| 74 69 76 65 20 0d 09 73 | 65 74 20 66 69 6c 65 73 |tive ..s|et files|
|000007a0| 20 5b 77 69 6e 4e 61 6d | 65 73 20 2d 66 5d 0d 09 | [winNam|es -f]..|
|000007b0| 69 66 20 7b 5b 6c 6c 65 | 6e 67 74 68 20 24 66 69 |if {[lle|ngth $fi|
|000007c0| 6c 65 73 5d 20 3c 20 32 | 7d 20 7b 72 65 74 75 72 |les] < 2|} {retur|
|000007d0| 6e 7d 0d 09 73 65 74 20 | 66 20 5b 6c 69 6e 64 65 |n}..set |f [linde|
|000007e0| 78 20 24 66 69 6c 65 73 | 20 30 5d 0d 09 73 65 74 |x $files| 0]..set|
|000007f0| 20 61 69 6e 64 20 5b 6c | 73 65 61 72 63 68 20 24 | aind [l|search $|
|00000800| 77 69 6e 41 63 74 69 76 | 65 20 24 66 5d 0d 09 69 |winActiv|e $f]..i|
|00000810| 66 20 7b 24 61 69 6e 64 | 20 3c 20 30 7d 20 7b 65 |f {$aind| < 0} {e|
|00000820| 72 72 6f 72 20 22 4e 6f | 20 77 69 6e 20 27 24 66 |rror "No| win '$f|
|00000830| 27 22 7d 0d 09 73 65 74 | 20 72 6e 67 20 5b 6c 72 |'"}..set| rng [lr|
|00000840| 61 6e 67 65 20 24 77 69 | 6e 41 63 74 69 76 65 20 |ange $wi|nActive |
|00000850| 30 20 5b 65 78 70 72 20 | 24 61 69 6e 64 2d 31 5d |0 [expr |$aind-1]|
|00000860| 5d 0d 09 73 65 74 20 77 | 69 6e 41 63 74 69 76 65 |]..set w|inActive|
|00000870| 20 5b 63 6f 6e 63 61 74 | 20 5b 6c 72 61 6e 67 65 | [concat| [lrange|
|00000880| 20 24 77 69 6e 41 63 74 | 69 76 65 20 24 61 69 6e | $winAct|ive $ain|
|00000890| 64 20 65 6e 64 5d 20 24 | 72 6e 67 5d 0d 09 73 65 |d end] $|rng]..se|
|000008a0| 74 20 66 32 20 5b 6c 69 | 6e 64 65 78 20 5b 6c 72 |t f2 [li|ndex [lr|
|000008b0| 61 6e 67 65 20 24 77 69 | 6e 41 63 74 69 76 65 20 |ange $wi|nActive |
|000008c0| 65 6e 64 20 65 6e 64 5d | 20 30 5d 0d 09 73 65 74 |end end]| 0]..set|
|000008d0| 20 77 69 6e 41 63 74 69 | 76 65 20 5b 6c 72 65 70 | winActi|ve [lrep|
|000008e0| 6c 61 63 65 20 24 77 69 | 6e 41 63 74 69 76 65 20 |lace $wi|nActive |
|000008f0| 65 6e 64 20 65 6e 64 5d | 0d 09 73 65 74 20 77 69 |end end]|..set wi|
|00000900| 6e 41 63 74 69 76 65 20 | 5b 6c 69 6e 73 65 72 74 |nActive |[linsert|
|00000910| 20 24 77 69 6e 41 63 74 | 69 76 65 20 30 20 24 66 | $winAct|ive 0 $f|
|00000920| 32 5d 0d 09 62 72 69 6e | 67 54 6f 46 72 6f 6e 74 |2]..brin|gToFront|
|00000930| 20 24 66 32 0d 7d 0d 0d | 70 72 6f 63 20 64 69 73 | $f2.}..|proc dis|
|00000940| 70 46 75 6c 6c 4e 61 6d | 65 20 7b 7d 20 7b 0d 09 |pFullNam|e {} {..|
|00000950| 6d 65 73 73 61 67 65 20 | 5b 6c 69 6e 64 65 78 20 |message |[lindex |
|00000960| 5b 77 69 6e 4e 61 6d 65 | 73 20 2d 66 5d 20 30 5d |[winName|s -f] 0]|
|00000970| 0d 7d 0d 0d 70 72 6f 63 | 20 76 65 72 74 69 63 61 |.}..proc| vertica|
|00000980| 6c 6c 79 20 7b 7d 20 7b | 0d 09 67 6c 6f 62 61 6c |lly {} {|..global|
|00000990| 20 74 69 6c 65 48 65 69 | 67 68 74 20 74 69 6c 65 | tileHei|ght tile|
|000009a0| 54 6f 70 20 74 69 6c 65 | 57 69 64 74 68 0d 09 67 |Top tile|Width..g|
|000009b0| 6c 6f 62 61 6c 20 6e 75 | 6d 57 69 6e 73 54 6f 54 |lobal nu|mWinsToT|
|000009c0| 69 6c 65 0d 09 73 65 74 | 20 6d 61 72 67 69 6e 20 |ile..set| margin |
|000009d0| 32 32 0d 09 73 65 74 20 | 6e 61 6d 65 73 20 5b 77 |22..set |names [w|
|000009e0| 69 6e 4e 61 6d 65 73 20 | 2d 66 5d 0d 09 73 65 74 |inNames |-f]..set|
|000009f0| 20 6e 75 6d 57 69 6e 73 | 20 5b 6c 6c 65 6e 67 74 | numWins| [llengt|
|00000a00| 68 20 24 6e 61 6d 65 73 | 5d 0d 09 69 66 20 28 24 |h $names|]..if ($|
|00000a10| 6e 75 6d 57 69 6e 73 3c | 3d 31 29 20 72 65 74 75 |numWins<|=1) retu|
|00000a20| 72 6e 0d 09 69 66 20 28 | 24 6e 75 6d 57 69 6e 73 |rn..if (|$numWins|
|00000a30| 3e 24 6e 75 6d 57 69 6e | 73 54 6f 54 69 6c 65 29 |>$numWin|sToTile)|
|00000a40| 20 7b 73 65 74 20 6e 75 | 6d 57 69 6e 73 20 24 6e | {set nu|mWins $n|
|00000a50| 75 6d 57 69 6e 73 54 6f | 54 69 6c 65 7d 0d 09 73 |umWinsTo|Tile}..s|
|00000a60| 65 74 20 68 65 69 67 68 | 74 20 5b 65 78 70 72 20 |et heigh|t [expr |
|00000a70| 28 24 74 69 6c 65 48 65 | 69 67 68 74 2f 24 6e 75 |($tileHe|ight/$nu|
|00000a80| 6d 57 69 6e 73 29 2d 24 | 6d 61 72 67 69 6e 5d 0d |mWins)-$|margin].|
|00000a90| 09 73 65 74 20 68 65 69 | 67 68 74 20 5b 65 78 70 |.set hei|ght [exp|
|00000aa0| 72 20 7b 24 68 65 69 67 | 68 74 20 2b 20 24 6d 61 |r {$heig|ht + $ma|
|00000ab0| 72 67 69 6e 20 2f 20 24 | 6e 75 6d 57 69 6e 73 7d |rgin / $|numWins}|
|00000ac0| 5d 0d 09 73 65 74 20 77 | 69 64 74 68 20 24 74 69 |]..set w|idth $ti|
|00000ad0| 6c 65 57 69 64 74 68 0d | 09 73 65 74 20 76 65 72 |leWidth.|.set ver|
|00000ae0| 20 24 74 69 6c 65 54 6f | 70 0d 09 69 66 20 7b 24 | $tileTo|p..if {$|
|00000af0| 6e 75 6d 57 69 6e 73 20 | 3d 3d 20 30 7d 20 7b 72 |numWins |== 0} {r|
|00000b00| 65 74 75 72 6e 7d 0d 0d | 09 66 6f 72 20 7b 73 65 |eturn}..|.for {se|
|00000b10| 74 20 69 20 30 7d 20 7b | 24 69 20 3c 20 24 6e 75 |t i 0} {|$i < $nu|
|00000b20| 6d 57 69 6e 73 7d 20 7b | 69 6e 63 72 20 69 7d 20 |mWins} {|incr i} |
|00000b30| 7b 0d 09 09 6d 6f 76 65 | 57 69 6e 20 5b 6c 69 6e |{...move|Win [lin|
|00000b40| 64 65 78 20 24 6e 61 6d | 65 73 20 24 69 5d 20 31 |dex $nam|es $i] 1|
|00000b50| 30 30 30 20 30 0d 09 09 | 73 69 7a 65 57 69 6e 20 |000 0...|sizeWin |
|00000b60| 5b 6c 69 6e 64 65 78 20 | 24 6e 61 6d 65 73 20 24 |[lindex |$names $|
|00000b70| 69 5d 20 24 77 69 64 74 | 68 20 24 68 65 69 67 68 |i] $widt|h $heigh|
|00000b80| 74 0d 09 7d 0d 0d 09 66 | 6f 72 20 7b 73 65 74 20 |t..}...f|or {set |
|00000b90| 69 20 30 7d 20 7b 24 69 | 20 3c 20 24 6e 75 6d 57 |i 0} {$i| < $numW|
|00000ba0| 69 6e 73 7d 20 7b 69 6e | 63 72 20 69 7d 20 7b 0d |ins} {in|cr i} {.|
|00000bb0| 09 09 6d 6f 76 65 57 69 | 6e 20 5b 6c 69 6e 64 65 |..moveWi|n [linde|
|00000bc0| 78 20 24 6e 61 6d 65 73 | 20 24 69 5d 20 33 20 24 |x $names| $i] 3 $|
|00000bd0| 76 65 72 0d 09 09 73 65 | 74 20 76 65 72 20 5b 65 |ver...se|t ver [e|
|00000be0| 78 70 72 20 24 76 65 72 | 2b 24 6d 61 72 67 69 6e |xpr $ver|+$margin|
|00000bf0| 2b 24 68 65 69 67 68 74 | 5d 0d 09 7d 0d 7d 0d 0d |+$height|]..}.}..|
|00000c00| 70 72 6f 63 20 68 6f 72 | 69 7a 6f 6e 74 61 6c 6c |proc hor|izontall|
|00000c10| 79 20 7b 7d 20 7b 0d 09 | 67 6c 6f 62 61 6c 20 74 |y {} {..|global t|
|00000c20| 69 6c 65 48 65 69 67 68 | 74 20 74 69 6c 65 57 69 |ileHeigh|t tileWi|
|00000c30| 64 74 68 20 74 69 6c 65 | 54 6f 70 20 6e 75 6d 57 |dth tile|Top numW|
|00000c40| 69 6e 73 54 6f 54 69 6c | 65 0d 0d 09 73 65 74 20 |insToTil|e...set |
|00000c50| 6e 61 6d 65 73 20 5b 77 | 69 6e 4e 61 6d 65 73 20 |names [w|inNames |
|00000c60| 2d 66 5d 0d 09 73 65 74 | 20 6e 75 6d 57 69 6e 73 |-f]..set| numWins|
|00000c70| 20 5b 6c 6c 65 6e 67 74 | 68 20 24 6e 61 6d 65 73 | [llengt|h $names|
|00000c80| 5d 0d 09 69 66 20 28 24 | 6e 75 6d 57 69 6e 73 3c |]..if ($|numWins<|
|00000c90| 3d 31 29 20 72 65 74 75 | 72 6e 0d 09 69 66 20 28 |=1) retu|rn..if (|
|00000ca0| 24 6e 75 6d 57 69 6e 73 | 3e 24 6e 75 6d 57 69 6e |$numWins|>$numWin|
|00000cb0| 73 54 6f 54 69 6c 65 29 | 20 7b 73 65 74 20 6e 75 |sToTile)| {set nu|
|00000cc0| 6d 57 69 6e 73 20 24 6e | 75 6d 57 69 6e 73 54 6f |mWins $n|umWinsTo|
|00000cd0| 54 69 6c 65 7d 0d 09 73 | 65 74 20 6d 61 72 67 69 |Tile}..s|et margi|
|00000ce0| 6e 20 34 0d 09 73 65 74 | 20 77 69 64 74 68 20 5b |n 4..set| width [|
|00000cf0| 65 78 70 72 20 28 24 74 | 69 6c 65 57 69 64 74 68 |expr ($t|ileWidth|
|00000d00| 2f 24 6e 75 6d 57 69 6e | 73 29 2d 24 6d 61 72 67 |/$numWin|s)-$marg|
|00000d10| 69 6e 5d 0d 09 73 65 74 | 20 77 69 64 74 68 20 5b |in]..set| width [|
|00000d20| 65 78 70 72 20 7b 24 77 | 69 64 74 68 20 2b 20 24 |expr {$w|idth + $|
|00000d30| 6d 61 72 67 69 6e 20 2f | 20 24 6e 75 6d 57 69 6e |margin /| $numWin|
|00000d40| 73 7d 5d 0d 09 73 65 74 | 20 68 65 69 67 68 74 20 |s}]..set| height |
|00000d50| 24 74 69 6c 65 48 65 69 | 67 68 74 0d 09 73 65 74 |$tileHei|ght..set|
|00000d60| 20 68 6f 72 20 32 0d 09 | 69 66 20 7b 24 6e 75 6d | hor 2..|if {$num|
|00000d70| 57 69 6e 73 20 3d 3d 20 | 30 7d 20 7b 72 65 74 75 |Wins == |0} {retu|
|00000d80| 72 6e 7d 0d 0d 09 66 6f | 72 20 7b 73 65 74 20 69 |rn}...fo|r {set i|
|00000d90| 20 30 7d 20 7b 24 69 20 | 3c 20 24 6e 75 6d 57 69 | 0} {$i |< $numWi|
|00000da0| 6e 73 7d 20 7b 69 6e 63 | 72 20 69 7d 20 7b 0d 09 |ns} {inc|r i} {..|
|00000db0| 09 6d 6f 76 65 57 69 6e | 20 5b 6c 69 6e 64 65 78 |.moveWin| [lindex|
|00000dc0| 20 24 6e 61 6d 65 73 20 | 24 69 5d 20 31 30 30 30 | $names |$i] 1000|
|00000dd0| 20 30 0d 09 09 73 69 7a | 65 57 69 6e 20 5b 6c 69 | 0...siz|eWin [li|
|00000de0| 6e 64 65 78 20 24 6e 61 | 6d 65 73 20 24 69 5d 20 |ndex $na|mes $i] |
|00000df0| 24 77 69 64 74 68 20 24 | 68 65 69 67 68 74 0d 09 |$width $|height..|
|00000e00| 7d 0d 0d 09 66 6f 72 20 | 7b 73 65 74 20 69 20 30 |}...for |{set i 0|
|00000e10| 7d 20 7b 24 69 20 3c 20 | 24 6e 75 6d 57 69 6e 73 |} {$i < |$numWins|
|00000e20| 7d 20 7b 69 6e 63 72 20 | 69 7d 20 7b 0d 09 09 6d |} {incr |i} {...m|
|00000e30| 6f 76 65 57 69 6e 20 5b | 6c 69 6e 64 65 78 20 24 |oveWin [|lindex $|
|00000e40| 6e 61 6d 65 73 20 24 69 | 5d 20 24 68 6f 72 20 24 |names $i|] $hor $|
|00000e50| 74 69 6c 65 54 6f 70 0d | 09 09 73 65 74 20 68 6f |tileTop.|..set ho|
|00000e60| 72 20 5b 65 78 70 72 20 | 24 68 6f 72 2b 24 77 69 |r [expr |$hor+$wi|
|00000e70| 64 74 68 2b 24 6d 61 72 | 67 69 6e 5d 0d 09 7d 0d |dth+$mar|gin]..}.|
|00000e80| 7d 0d 0d 70 72 6f 63 20 | 74 69 6c 65 64 20 7b 7d |}..proc |tiled {}|
|00000e90| 20 7b 0d 09 67 6c 6f 62 | 61 6c 20 74 69 6c 65 48 | {..glob|al tileH|
|00000ea0| 65 69 67 68 74 20 74 69 | 6c 65 57 69 64 74 68 20 |eight ti|leWidth |
|00000eb0| 6e 75 6d 57 69 6e 73 54 | 6f 54 69 6c 65 20 74 69 |numWinsT|oTile ti|
|00000ec0| 6c 65 54 6f 70 0d 09 73 | 65 74 20 78 50 61 6e 20 |leTop..s|et xPan |
|00000ed0| 38 0d 09 73 65 74 20 79 | 50 61 6e 20 31 30 0d 09 |8..set y|Pan 10..|
|00000ee0| 73 65 74 20 78 4d 61 72 | 67 20 33 0d 09 73 65 74 |set xMar|g 3..set|
|00000ef0| 20 79 4d 61 72 67 20 24 | 74 69 6c 65 54 6f 70 0d | yMarg $|tileTop.|
|00000f00| 09 73 65 74 20 79 4d 61 | 78 20 35 30 0d 09 73 65 |.set yMa|x 50..se|
|00000f10| 74 20 6e 61 6d 65 73 20 | 5b 77 69 6e 4e 61 6d 65 |t names |[winName|
|00000f20| 73 20 2d 66 5d 0d 09 73 | 65 74 20 6e 75 6d 57 69 |s -f]..s|et numWi|
|00000f30| 6e 73 20 5b 6c 6c 65 6e | 67 74 68 20 24 6e 61 6d |ns [llen|gth $nam|
|00000f40| 65 73 5d 0d 09 69 66 20 | 28 24 6e 75 6d 57 69 6e |es]..if |($numWin|
|00000f50| 73 3c 31 29 20 72 65 74 | 75 72 6e 0d 09 73 65 74 |s<1) ret|urn..set|
|00000f60| 20 6c 69 6e 65 20 30 09 | 0d 09 73 65 74 20 68 65 | line 0.|..set he|
|00000f70| 69 67 68 74 20 5b 65 78 | 70 72 20 24 74 69 6c 65 |ight [ex|pr $tile|
|00000f80| 48 65 69 67 68 74 2d 24 | 79 50 61 6e 2a 28 24 6e |Height-$|yPan*($n|
|00000f90| 75 6d 57 69 6e 73 2d 31 | 29 5d 0d 09 73 65 74 20 |umWins-1|)]..set |
|00000fa0| 77 69 64 74 68 20 5b 65 | 78 70 72 20 24 74 69 6c |width [e|xpr $til|
|00000fb0| 65 57 69 64 74 68 2d 24 | 78 50 61 6e 2a 28 24 6e |eWidth-$|xPan*($n|
|00000fc0| 75 6d 57 69 6e 73 2d 31 | 29 5d 0d 09 0d 09 66 6f |umWins-1|)]....fo|
|00000fd0| 72 20 7b 73 65 74 20 69 | 20 30 7d 20 7b 24 69 20 |r {set i| 0} {$i |
|00000fe0| 3c 20 24 6e 75 6d 57 69 | 6e 73 7d 20 7b 69 6e 63 |< $numWi|ns} {inc|
|00000ff0| 72 20 69 7d 20 7b 0d 09 | 09 6d 6f 76 65 57 69 6e |r i} {..|.moveWin|
|00001000| 20 5b 6c 69 6e 64 65 78 | 20 24 6e 61 6d 65 73 20 | [lindex| $names |
|00001010| 24 69 5d 20 5b 65 78 70 | 72 20 24 78 4d 61 72 67 |$i] [exp|r $xMarg|
|00001020| 2b 24 69 2a 24 78 50 61 | 6e 5d 20 5b 65 78 70 72 |+$i*$xPa|n] [expr|
|00001030| 20 24 79 4d 61 72 67 2b | 24 6c 69 6e 65 5d 0d 09 | $yMarg+|$line]..|
|00001040| 09 73 65 74 20 6c 69 6e | 65 20 5b 65 78 70 72 20 |.set lin|e [expr |
|00001050| 24 6c 69 6e 65 2b 24 79 | 50 61 6e 5d 0d 09 09 69 |$line+$y|Pan]...i|
|00001060| 66 20 28 24 6c 69 6e 65 | 3e 24 79 4d 61 78 29 20 |f ($line|>$yMax) |
|00001070| 7b 73 65 74 20 6c 69 6e | 65 20 30 7d 0d 09 09 73 |{set lin|e 0}...s|
|00001080| 69 7a 65 57 69 6e 20 5b | 6c 69 6e 64 65 78 20 24 |izeWin [|lindex $|
|00001090| 6e 61 6d 65 73 20 24 69 | 5d 20 24 77 69 64 74 68 |names $i|] $width|
|000010a0| 20 24 68 65 69 67 68 74 | 0d 09 7d 0d 7d 0d 0d 0d | $height|..}.}...|
|000010b0| 70 72 6f 63 20 6f 76 65 | 72 6c 61 79 20 7b 7d 20 |proc ove|rlay {} |
|000010c0| 7b 0d 09 67 6c 6f 62 61 | 6c 20 64 65 66 48 65 69 |{..globa|l defHei|
|000010d0| 67 68 74 20 64 65 66 57 | 69 64 74 68 20 6e 75 6d |ght defW|idth num|
|000010e0| 57 69 6e 73 54 6f 54 69 | 6c 65 20 74 69 6c 65 54 |WinsToTi|le tileT|
|000010f0| 6f 70 0d 09 73 65 74 20 | 6e 61 6d 65 73 20 5b 77 |op..set |names [w|
|00001100| 69 6e 4e 61 6d 65 73 20 | 2d 66 5d 0d 09 73 65 74 |inNames |-f]..set|
|00001110| 20 6e 75 6d 57 69 6e 73 | 20 5b 6c 6c 65 6e 67 74 | numWins| [llengt|
|00001120| 68 20 24 6e 61 6d 65 73 | 5d 0d 09 69 66 20 28 24 |h $names|]..if ($|
|00001130| 6e 75 6d 57 69 6e 73 3c | 31 29 20 72 65 74 75 72 |numWins<|1) retur|
|00001140| 6e 0d 09 66 6f 72 20 7b | 73 65 74 20 69 20 30 7d |n..for {|set i 0}|
|00001150| 20 7b 24 69 20 3c 20 24 | 6e 75 6d 57 69 6e 73 7d | {$i < $|numWins}|
|00001160| 20 7b 69 6e 63 72 20 69 | 7d 20 7b 0d 09 09 6d 6f | {incr i|} {...mo|
|00001170| 76 65 57 69 6e 20 5b 6c | 69 6e 64 65 78 20 24 6e |veWin [l|index $n|
|00001180| 61 6d 65 73 20 24 69 5d | 20 33 20 24 74 69 6c 65 |ames $i]| 3 $tile|
|00001190| 54 6f 70 0d 09 09 73 69 | 7a 65 57 69 6e 20 5b 6c |Top...si|zeWin [l|
|000011a0| 69 6e 64 65 78 20 24 6e | 61 6d 65 73 20 24 69 5d |index $n|ames $i]|
|000011b0| 20 24 64 65 66 57 69 64 | 74 68 20 24 64 65 66 48 | $defWid|th $defH|
|000011c0| 65 69 67 68 74 0d 09 7d | 0d 7d 0d 0d 0d 70 72 6f |eight..}|.}...pro|
|000011d0| 63 20 74 68 72 65 65 51 | 75 61 72 74 65 72 73 20 |c threeQ|uarters |
|000011e0| 7b 7d 20 7b 0d 09 67 6c | 6f 62 61 6c 20 74 69 6c |{} {..gl|obal til|
|000011f0| 65 48 65 69 67 68 74 20 | 74 69 6c 65 57 69 64 74 |eHeight |tileWidt|
|00001200| 68 20 74 69 6c 65 54 6f | 70 0d 0d 09 69 66 20 7b |h tileTo|p...if {|
|00001210| 5b 6c 6c 65 6e 67 74 68 | 20 5b 73 65 74 20 6e 6d |[llength| [set nm|
|00001220| 73 20 5b 77 69 6e 4e 61 | 6d 65 73 20 2d 66 5d 5d |s [winNa|mes -f]]|
|00001230| 5d 20 3c 3d 20 32 7d 20 | 72 65 74 75 72 6e 0d 09 |] <= 2} |return..|
|00001240| 73 65 74 20 6f 6e 65 20 | 5b 6c 69 6e 64 65 78 20 |set one |[lindex |
|00001250| 24 6e 6d 73 20 30 5d 0d | 09 73 65 74 20 74 77 6f |$nms 0].|.set two|
|00001260| 20 5b 6c 69 6e 64 65 78 | 20 24 6e 6d 73 20 31 5d | [lindex| $nms 1]|
|00001270| 0d 09 73 65 74 20 6d 61 | 72 67 69 6e 20 32 32 0d |..set ma|rgin 22.|
|00001280| 09 73 65 74 20 68 65 69 | 67 68 74 20 5b 65 78 70 |.set hei|ght [exp|
|00001290| 72 20 28 24 74 69 6c 65 | 48 65 69 67 68 74 20 2d |r ($tile|Height -|
|000012a0| 20 24 6d 61 72 67 69 6e | 29 20 2f 20 34 5d 0d 0d | $margin|) / 4]..|
|000012b0| 09 6d 6f 76 65 57 69 6e | 20 24 6f 6e 65 20 31 30 |.moveWin| $one 10|
|000012c0| 30 30 20 30 0d 09 73 69 | 7a 65 57 69 6e 20 24 6f |00 0..si|zeWin $o|
|000012d0| 6e 65 20 24 74 69 6c 65 | 57 69 64 74 68 20 5b 65 |ne $tile|Width [e|
|000012e0| 78 70 72 20 33 20 2a 20 | 24 68 65 69 67 68 74 5d |xpr 3 * |$height]|
|000012f0| 0d 09 6d 6f 76 65 57 69 | 6e 20 24 74 77 6f 20 31 |..moveWi|n $two 1|
|00001300| 30 30 30 20 30 0d 09 73 | 69 7a 65 57 69 6e 20 24 |000 0..s|izeWin $|
|00001310| 74 77 6f 20 24 74 69 6c | 65 57 69 64 74 68 20 24 |two $til|eWidth $|
|00001320| 68 65 69 67 68 74 0d 0d | 09 73 65 74 20 76 65 72 |height..|.set ver|
|00001330| 20 24 74 69 6c 65 54 6f | 70 0d 09 6d 6f 76 65 57 | $tileTo|p..moveW|
|00001340| 69 6e 20 24 6f 6e 65 20 | 33 20 24 76 65 72 0d 09 |in $one |3 $ver..|
|00001350| 6d 6f 76 65 57 69 6e 20 | 24 74 77 6f 20 33 20 5b |moveWin |$two 3 [|
|00001360| 65 78 70 72 20 24 76 65 | 72 20 2b 20 33 20 2a 20 |expr $ve|r + 3 * |
|00001370| 24 68 65 69 67 68 74 20 | 2b 20 24 6d 61 72 67 69 |$height |+ $margi|
|00001380| 6e 5d 0d 7d 0d 62 69 6e | 64 20 27 33 27 20 3c 51 |n].}.bin|d '3' <Q|
|00001390| 3e 20 74 68 72 65 65 51 | 75 61 72 74 65 72 73 0d |> threeQ|uarters.|
|000013a0| 0d 0d 70 72 6f 63 20 63 | 68 6f 6f 73 65 41 57 69 |..proc c|hooseAWi|
|000013b0| 6e 64 6f 77 20 7b 7d 20 | 7b 0d 20 20 20 20 73 65 |ndow {} |{. se|
|000013c0| 74 20 6e 61 6d 65 20 5b | 6c 69 73 74 70 69 63 6b |t name [|listpick|
|000013d0| 20 5b 6c 73 6f 72 74 20 | 2d 69 67 6e 6f 72 65 20 | [lsort |-ignore |
|000013e0| 5b 77 69 6e 4e 61 6d 65 | 73 5d 5d 5d 0d 20 20 20 |[winName|s]]]. |
|000013f0| 20 69 66 20 7b 5b 73 74 | 72 69 6e 67 20 6c 65 6e | if {[st|ring len|
|00001400| 67 74 68 20 24 6e 61 6d | 65 5d 7d 20 7b 0d 20 20 |gth $nam|e]} {. |
|00001410| 20 20 09 62 72 69 6e 67 | 54 6f 46 72 6f 6e 74 20 | .bring|ToFront |
|00001420| 24 6e 61 6d 65 0d 09 09 | 69 66 20 5b 69 63 6f 6e |$name...|if [icon|
|00001430| 20 2d 71 5d 20 7b 20 69 | 63 6f 6e 20 2d 66 20 24 | -q] { i|con -f $|
|00001440| 6e 61 6d 65 20 2d 6f 20 | 7d 0d 20 20 20 09 7d 0d |name -o |}. .}.|
|00001450| 7d 0d 0d 0d 70 72 6f 63 | 20 77 69 6e 43 6f 6d 70 |}...proc| winComp|
|00001460| 20 7b 63 75 72 72 20 63 | 7d 20 7b 0d 09 69 66 20 | {curr c|} {..if |
|00001470| 7b 24 63 20 21 3d 20 22 | 5c 74 22 7d 20 7b 72 65 |{$c != "|\t"} {re|
|00001480| 74 75 72 6e 20 24 63 7d | 0d 09 0d 09 73 65 74 20 |turn $c}|....set |
|00001490| 6d 61 74 63 68 65 73 20 | 7b 7d 0d 09 66 6f 72 65 |matches |{}..fore|
|000014a0| 61 63 68 20 77 20 5b 77 | 69 6e 4e 61 6d 65 73 5d |ach w [w|inNames]|
|000014b0| 20 7b 0d 09 09 69 66 20 | 7b 5b 73 74 72 69 6e 67 | {...if |{[string|
|000014c0| 20 6d 61 74 63 68 20 22 | 24 63 75 72 72 2a 22 20 | match "|$curr*" |
|000014d0| 24 77 5d 7d 20 7b 0d 09 | 09 09 6c 61 70 70 65 6e |$w]} {..|..lappen|
|000014e0| 64 20 6d 61 74 63 68 65 | 73 20 24 77 0d 09 09 7d |d matche|s $w...}|
|000014f0| 0d 09 7d 0d 09 69 66 20 | 7b 21 5b 6c 6c 65 6e 67 |..}..if |{![lleng|
|00001500| 74 68 20 24 6d 61 74 63 | 68 65 73 5d 7d 20 7b 0d |th $matc|hes]} {.|
|00001510| 09 09 62 65 65 70 0d 09 | 7d 20 65 6c 73 65 69 66 |..beep..|} elseif|
|00001520| 20 7b 5b 6c 6c 65 6e 67 | 74 68 20 24 6d 61 74 63 | {[lleng|th $matc|
|00001530| 68 65 73 5d 20 3d 3d 20 | 31 7d 20 7b 0d 09 09 72 |hes] == |1} {...r|
|00001540| 65 74 75 72 6e 20 5b 73 | 74 72 69 6e 67 20 72 61 |eturn [s|tring ra|
|00001550| 6e 67 65 20 5b 6c 69 6e | 64 65 78 20 24 6d 61 74 |nge [lin|dex $mat|
|00001560| 63 68 65 73 20 30 5d 20 | 5b 73 74 72 69 6e 67 20 |ches 0] |[string |
|00001570| 6c 65 6e 67 74 68 20 24 | 63 75 72 72 5d 20 65 6e |length $|curr] en|
|00001580| 64 5d 0d 09 7d 0d 09 72 | 65 74 75 72 6e 20 22 22 |d]..}..r|eturn ""|
|00001590| 0d 7d 0d 0d 70 72 6f 63 | 20 6e 65 78 74 57 69 6e |.}..proc| nextWin|
|000015a0| 20 7b 7d 20 7b 0d 09 67 | 6c 6f 62 61 6c 20 77 69 | {} {..g|lobal wi|
|000015b0| 6e 41 63 74 69 76 65 20 | 0d 09 73 65 74 20 66 69 |nActive |..set fi|
|000015c0| 6c 65 73 20 5b 77 69 6e | 4e 61 6d 65 73 20 2d 66 |les [win|Names -f|
|000015d0| 5d 0d 09 69 66 20 7b 5b | 6c 6c 65 6e 67 74 68 20 |]..if {[|llength |
|000015e0| 24 66 69 6c 65 73 5d 20 | 3c 20 32 7d 20 7b 72 65 |$files] |< 2} {re|
|000015f0| 74 75 72 6e 20 22 22 7d | 0d 09 73 65 74 20 66 20 |turn ""}|..set f |
|00001600| 5b 6c 69 6e 64 65 78 20 | 24 66 69 6c 65 73 20 30 |[lindex |$files 0|
|00001610| 5d 0d 09 73 65 74 20 61 | 69 6e 64 20 5b 6c 73 65 |]..set a|ind [lse|
|00001620| 61 72 63 68 20 24 77 69 | 6e 41 63 74 69 76 65 20 |arch $wi|nActive |
|00001630| 24 66 5d 0d 09 69 66 20 | 7b 24 61 69 6e 64 20 3c |$f]..if |{$aind <|
|00001640| 20 30 7d 20 7b 65 72 72 | 6f 72 20 22 4e 6f 20 77 | 0} {err|or "No w|
|00001650| 69 6e 20 27 24 66 27 22 | 7d 0d 09 69 66 20 7b 5b |in '$f'"|}..if {[|
|00001660| 69 6e 63 72 20 61 69 6e | 64 5d 20 3c 20 5b 6c 6c |incr ain|d] < [ll|
|00001670| 65 6e 67 74 68 20 24 77 | 69 6e 41 63 74 69 76 65 |ength $w|inActive|
|00001680| 5d 7d 20 7b 0d 09 09 72 | 65 74 75 72 6e 20 5b 66 |]} {...r|eturn [f|
|00001690| 69 6c 65 20 74 61 69 6c | 20 5b 6c 69 6e 64 65 78 |ile tail| [lindex|
|000016a0| 20 24 77 69 6e 41 63 74 | 69 76 65 20 24 61 69 6e | $winAct|ive $ain|
|000016b0| 64 5d 5d 0d 09 7d 20 65 | 6c 73 65 20 7b 0d 09 09 |d]]..} e|lse {...|
|000016c0| 72 65 74 75 72 6e 20 5b | 66 69 6c 65 20 74 61 69 |return [|file tai|
|000016d0| 6c 20 5b 6c 69 6e 64 65 | 78 20 24 77 69 6e 41 63 |l [linde|x $winAc|
|000016e0| 74 69 76 65 20 30 5d 5d | 0d 09 7d 0d 7d 0d 0d 70 |tive 0]]|..}.}..p|
|000016f0| 72 6f 63 20 63 68 6f 6f | 73 65 57 69 6e 64 6f 77 |roc choo|seWindow|
|00001700| 53 74 61 74 75 73 20 7b | 7d 20 7b 0d 09 69 66 20 |Status {|} {..if |
|00001710| 7b 5b 6c 6c 65 6e 67 74 | 68 20 5b 77 69 6e 4e 61 |{[llengt|h [winNa|
|00001720| 6d 65 73 5d 5d 20 3c 20 | 32 7d 20 7b 6d 65 73 73 |mes]] < |2} {mess|
|00001730| 61 67 65 20 22 6e 6f 20 | 6f 74 68 65 72 20 77 69 |age "no |other wi|
|00001740| 6e 64 6f 77 2e 22 3b 20 | 72 65 74 75 72 6e 7d 0d |ndow."; |return}.|
|00001750| 09 73 65 74 20 6e 65 78 | 74 20 5b 6e 65 78 74 57 |.set nex|t [nextW|
|00001760| 69 6e 5d 0d 09 73 65 74 | 20 72 65 73 20 5b 73 74 |in]..set| res [st|
|00001770| 61 74 75 73 50 72 6f 6d | 70 74 20 22 47 6f 74 6f |atusProm|pt "Goto|
|00001780| 20 77 69 6e 64 6f 77 3a | 20 28 24 6e 65 78 74 29 | window:| ($next)|
|00001790| 3a 22 20 77 69 6e 43 6f | 6d 70 5d 0d 09 69 66 20 |:" winCo|mp]..if |
|000017a0| 7b 5b 73 74 72 69 6e 67 | 20 6c 65 6e 67 74 68 20 |{[string| length |
|000017b0| 24 72 65 73 5d 7d 20 7b | 0d 09 09 63 61 74 63 68 |$res]} {|...catch|
|000017c0| 20 7b 62 72 69 6e 67 54 | 6f 46 72 6f 6e 74 20 24 | {bringT|oFront $|
|000017d0| 72 65 73 7d 0d 09 7d 20 | 65 6c 73 65 20 7b 0d 09 |res}..} |else {..|
|000017e0| 09 63 61 74 63 68 20 7b | 62 72 69 6e 67 54 6f 46 |.catch {|bringToF|
|000017f0| 72 6f 6e 74 20 24 6e 65 | 78 74 7d 0d 09 7d 0d 7d |ront $ne|xt}..}.}|
|00001800| 0d 62 69 6e 64 20 66 39 | 20 63 68 6f 6f 73 65 57 |.bind f9| chooseW|
|00001810| 69 6e 64 6f 77 53 74 61 | 74 75 73 0d 0d 70 72 6f |indowSta|tus..pro|
|00001820| 63 20 69 63 6f 6e 69 66 | 79 20 7b 7d 20 7b 20 0d |c iconif|y {} { .|
|00001830| 09 69 63 6f 6e 20 2d 74 | 20 0d 7d 0d 0d 0d 0d 70 |.icon -t| .}....p|
|00001840| 72 6f 63 20 7a 6f 6f 6d | 20 7b 7d 20 7b 0d 09 67 |roc zoom| {} {..g|
|00001850| 6c 6f 62 61 6c 20 6e 7a | 6d 53 74 61 74 65 20 74 |lobal nz|mState t|
|00001860| 69 6c 65 48 65 69 67 68 | 74 20 74 69 6c 65 57 69 |ileHeigh|t tileWi|
|00001870| 64 74 68 20 7a 6f 6f 6d | 65 64 47 65 6f 20 74 69 |dth zoom|edGeo ti|
|00001880| 6c 65 54 6f 70 0d 09 0d | 09 73 65 74 20 77 69 6e |leTop...|.set win|
|00001890| 20 5b 6c 69 6e 64 65 78 | 20 5b 77 69 6e 4e 61 6d | [lindex| [winNam|
|000018a0| 65 73 20 2d 66 5d 20 30 | 5d 0d 09 69 66 20 7b 5b |es -f] 0|]..if {[|
|000018b0| 69 6e 66 6f 20 65 78 69 | 73 74 73 20 6e 7a 6d 53 |info exi|sts nzmS|
|000018c0| 74 61 74 65 28 24 77 69 | 6e 29 5d 7d 20 7b 0d 09 |tate($wi|n)]} {..|
|000018d0| 09 69 66 20 7b 5b 67 65 | 74 47 65 6f 6d 65 74 72 |.if {[ge|tGeometr|
|000018e0| 79 5d 20 3d 3d 20 24 7a | 6f 6f 6d 65 64 47 65 6f |y] == $z|oomedGeo|
|000018f0| 7d 20 7b 0d 09 09 09 73 | 65 74 20 73 74 61 74 65 |} {....s|et state|
|00001900| 20 24 6e 7a 6d 53 74 61 | 74 65 28 24 77 69 6e 29 | $nzmSta|te($win)|
|00001910| 0d 09 09 09 6d 6f 76 65 | 57 69 6e 20 5b 6c 69 6e |....move|Win [lin|
|00001920| 64 65 78 20 24 73 74 61 | 74 65 20 30 5d 20 5b 6c |dex $sta|te 0] [l|
|00001930| 69 6e 64 65 78 20 24 73 | 74 61 74 65 20 31 5d 0d |index $s|tate 1].|
|00001940| 09 09 09 73 69 7a 65 57 | 69 6e 20 5b 6c 69 6e 64 |...sizeW|in [lind|
|00001950| 65 78 20 24 73 74 61 74 | 65 20 32 5d 20 5b 6c 69 |ex $stat|e 2] [li|
|00001960| 6e 64 65 78 20 24 73 74 | 61 74 65 20 33 5d 0d 09 |ndex $st|ate 3]..|
|00001970| 09 09 75 6e 73 65 74 20 | 6e 7a 6d 53 74 61 74 65 |..unset |nzmState|
|00001980| 28 24 77 69 6e 29 0d 09 | 09 09 72 65 74 75 72 6e |($win)..|..return|
|00001990| 0d 09 09 7d 0d 09 7d 20 | 0d 0d 09 73 65 74 20 6e |...}..} |...set n|
|000019a0| 7a 6d 53 74 61 74 65 28 | 24 77 69 6e 29 20 5b 67 |zmState(|$win) [g|
|000019b0| 65 74 47 65 6f 6d 65 74 | 72 79 5d 0d 09 6d 6f 76 |etGeomet|ry]..mov|
|000019c0| 65 57 69 6e 20 33 20 24 | 74 69 6c 65 54 6f 70 0d |eWin 3 $|tileTop.|
|000019d0| 09 73 69 7a 65 57 69 6e | 20 24 74 69 6c 65 57 69 |.sizeWin| $tileWi|
|000019e0| 64 74 68 20 24 74 69 6c | 65 48 65 69 67 68 74 0d |dth $til|eHeight.|
|000019f0| 0d 09 69 66 20 7b 21 5b | 69 6e 66 6f 20 65 78 69 |..if {![|info exi|
|00001a00| 73 74 73 20 7a 6f 6f 6d | 65 64 47 65 6f 5d 7d 20 |sts zoom|edGeo]} |
|00001a10| 7b 0d 09 09 73 65 74 20 | 7a 6f 6f 6d 65 64 47 65 |{...set |zoomedGe|
|00001a20| 6f 20 5b 67 65 74 47 65 | 6f 6d 65 74 72 79 5d 0d |o [getGe|ometry].|
|00001a30| 09 7d 0d 7d 0d 00 00 00 | 00 00 00 00 00 00 00 00 |.}.}....|........|
|00001a40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a80| 00 00 01 00 00 00 02 d6 | 00 00 01 d6 00 00 00 42 |........|.......B|
|00001a90| 73 5d 5d 5d 0d 09 69 66 | 20 7b 21 5b 73 74 72 69 |s]]]..if| {![stri|
|00001aa0| 6e 67 20 6c 65 6e 67 74 | 68 20 24 66 75 6e 63 5d |ng lengt|h $func]|
|00001ab0| 07 77 69 6e 2e 74 63 6c | 02 00 02 00 54 45 58 54 |.win.tcl|....TEXT|
|00001ac0| 41 4c 46 41 01 00 00 9c | 00 80 00 00 00 00 11 3c |ALFA....|.......<|
|00001ad0| 02 00 54 45 58 54 41 4c | 46 41 01 00 00 9c 00 80 |..TEXTAL|FA......|
|00001ae0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001af0| 00 00 aa 25 47 29 00 00 | 19 b5 00 00 03 18 69 6e |...%G)..|......in|
|00001b00| 67 20 6c 65 6e 67 74 68 | 20 24 77 69 6e 5d 7d 20 |g length| $win]} |
|00001b10| 72 65 74 75 72 6e 0d 09 | 74 72 61 63 65 46 75 6e |return..|traceFun|
|00001b20| 63 20 6f 6e 20 24 66 75 | 6e 63 20 24 77 69 6e 0d |c on $fu|nc $win.|
|00001b30| 09 6d 61 72 6b 4d 65 6e | 75 49 74 65 6d 20 54 63 |.markMen|uItem Tc|
|00001b40| 6c 20 74 72 61 63 65 54 | 63 6c 50 72 6f 63 20 6f |l traceT|clProc o|
|00001b50| 6e 0d 7d 0d 0d 70 72 6f | 63 20 74 72 61 63 65 4f |n.}..pro|c traceO|
|00001b60| 66 66 20 7b 7d 20 7b 0d | 09 74 72 61 63 65 46 75 |ff {} {.|.traceFu|
|00001b70| 6e 63 20 6f 66 66 0d 09 | 6d 61 72 6b 4d 65 6e 75 |nc off..|markMenu|
|00001b80| 00 00 01 86 00 14 00 00 | 13 22 00 00 13 22 0d 63 |........|."...".c|
|00001b90| 68 6f 6f 73 65 41 57 69 | 6e 64 6f 77 00 00 16 6f |hooseAWi|ndow...o|
|00001ba0| 00 00 16 6f 13 63 68 6f | 6f 73 65 57 69 6e 64 6f |...o.cho|oseWindo|
|00001bb0| 77 53 74 61 74 75 73 00 | 00 00 08 b8 00 00 08 b8 |wStatus.|........|
|00001bc0| 0d 64 69 73 70 46 75 6c | 6c 4e 61 6d 65 00 00 00 |.dispFul|lName...|
|00001bd0| 0b 80 00 00 0b 80 0d 68 | 6f 72 69 7a 6f 6e 74 61 |.......h|orizonta|
|00001be0| 6c 6c 79 00 00 00 17 9d | 00 00 17 9d 07 69 63 6f |lly.....|.....ico|
|00001bf0| 6e 69 66 79 00 00 15 14 | 00 00 15 14 07 6e 65 78 |nify....|.....nex|
|00001c00| 74 57 69 6e 00 00 05 58 | 00 00 05 58 0b 6e 65 78 |tWin...X|...X.nex|
|00001c10| 74 57 69 6e 64 6f 77 00 | 00 00 10 30 00 00 10 30 |tWindow.|...0...0|
|00001c20| 07 6f 76 65 72 6c 61 79 | 00 00 06 ee 00 00 06 ee |.overlay|........|
|00001c30| 0b 70 72 65 76 57 69 6e | 64 6f 77 00 00 00 02 45 |.prevWin|dow....E|
|00001c40| 00 00 02 45 0b 73 68 72 | 69 6e 6b 46 75 6c 6c 00 |...E.shr|inkFull.|
|00001c50| 00 00 00 e1 00 00 00 e1 | 0b 73 68 72 69 6e 6b 48 |........|.shrinkH|
|00001c60| 69 67 68 00 00 00 02 a5 | 00 00 02 a5 0b 73 68 72 |igh.....|.....shr|
|00001c70| 69 6e 6b 4c 65 66 74 00 | 00 00 01 9e 00 00 01 9e |inkLeft.|........|
|00001c80| 09 73 68 72 69 6e 6b 4c | 6f 77 00 00 03 b5 00 00 |.shrinkL|ow......|
|00001c90| 03 b5 0b 73 68 72 69 6e | 6b 52 69 67 68 74 00 00 |...shrin|kRight..|
|00001ca0| 04 e0 00 00 04 e0 0d 73 | 77 61 70 57 69 74 68 4e |.......s|wapWithN|
|00001cb0| 65 78 74 00 00 00 11 4d | 00 00 11 4d 0d 74 68 72 |ext....M|...M.thr|
|00001cc0| 65 65 51 75 61 72 74 65 | 72 73 00 00 0e 03 00 00 |eeQuarte|rs......|
|00001cd0| 0e 03 05 74 69 6c 65 64 | 00 00 08 f4 00 00 08 f4 |...tiled|........|
|00001ce0| 0b 76 65 72 74 69 63 61 | 6c 6c 79 00 00 00 13 d4 |.vertica|lly.....|
|00001cf0| 00 00 13 d4 07 77 69 6e | 43 6f 6d 70 00 00 17 bf |.....win|Comp....|
|00001d00| 00 00 17 bf 05 7a 6f 6f | 6d 00 00 00 00 48 00 09 |.....zoo|m....H..|
|00001d10| 4d 6f 6e 61 63 6f 00 00 | 00 dd c7 e8 00 00 00 00 |Monaco..|........|
|00001d20| 00 f4 c6 82 00 03 2f 0a | 03 0d 00 ee 89 88 00 00 |....../.|........|
|00001d30| 00 04 00 04 00 28 00 03 | 00 ee 02 79 00 28 00 03 |.....(..|...y.(..|
|00001d40| 00 ee 02 79 00 28 a9 a6 | 00 00 05 58 00 00 05 58 |...y.(..|...X...X|
|00001d50| 00 00 05 57 01 00 00 00 | 01 00 00 00 02 d6 00 00 |...W....|........|
|00001d60| 01 d6 00 00 00 42 00 dd | c7 e8 0c 20 00 00 00 1c |.....B..|... ....|
|00001d70| 00 3e 00 00 4d 50 53 52 | 00 01 00 0a 03 ef 00 00 |.>..MPSR|........|
|00001d80| 00 00 00 00 00 00 00 00 | 03 ed ff ff 00 00 01 8a |........|........|
|00001d90| 00 e2 28 c0 03 74 61 62 | 00 00 00 00 00 00 00 00 |..(..tab|........|
|00001da0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001db0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001dc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001dd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001de0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001df0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+